import { IPSDELogicNode } from './ipsdelogic-node';
import { IPSDELogicParam } from './ipsdelogic-param';

/**
 *
 * 继承父接口类型值[THROWEXCEPTION]
 * @export
 * @interface IPSDEThrowExceptionLogic
 */
export interface IPSDEThrowExceptionLogic extends IPSDELogicNode {
  /**
   * 错误代码
   * @type {number}
   */
  errorCode: number;

  /**
   * 错误信息
   * @type {string}
   */
  errorInfo: string;

  /**
   * 异常对象
   * @type {string}
   */
  exceptionObj: string;

  /**
   * 异常参数对象
   *
   * @type {IPSDELogicParam}
   */
  getExceptionParam(): IPSDELogicParam | null;

  /**
   * 异常参数对象
   *
   * @type {IPSDELogicParam}
   */
  get exceptionParam(): IPSDELogicParam | null;

  /**
   * 异常参数对象（必须存在）
   *
   * @type {IPSDELogicParam}
   */
  getExceptionParamMust(): IPSDELogicParam;
}
